Industrial robots and similar highly flexible machine tools gained commercial acceptance during the late 1970s. Since then, the use of industrial robots has increased substantially, particularly for automobile manufacturing.
The guiding purpose for industrial robots is manufacturing flexibility. Robots allow assembly lines and work cells to make different articles with no or minimal manual equipment changes. The list of robot applications in manufacturing is long and ever increasing. Examples include computer vision inspection, spot and arc welding, spray painting, drilling, part placement, and adhesive application.
The boundary between robots and machine tools is not strictly defined, however. Compared with conventional machine tools, robots generally have more joints (or axes) of motion thereby offering more degrees of freedom for positioning an end effector. In the robotics field, the term “end effector” has been adopted to cover the variety of active equipment carried by robots. Such equipment varies according to the manufacturing application, e.g. spot welding.
Robots generally include positioning arms with mechanical joints, actuators such as motors for causing movement about the joints, and sensors which aid in determining the position (or pose) of the robot. Although most include these core components, industrial robots new and old otherwise vary greatly in their electromechanical configurations.
For example, some robots rely only on revolute, (i.e. rotary) joints, while some are equipped with combinations of linear and revolute axes. Robots with a series of extending arms and revolute joints have been labeled articulating robots.
Even among a given class of robots there is mechanical variation. The revolute joints of articulating robots may be, for example, offset from their supporting arm—a shoulder joint, centered to the supporting arm—an elbow joint or axially aligned with the supporting arm—a wrist joint. Likewise, linear joints may be co-linear or orthogonal. Actuators and feedback sensors are another source of the varying configurations. For example, some robots are equipped with stepper motors, others servo motors.
Electronic control systems are employed to control and program the actions of robots. For the necessary coordinated action between the end effector and the robot positioning, robot control systems preferably provide a level of software programming as well as an interface to field I/O and end effector subsystems. Conventional robot control systems are collections of customized electronics that vary according to robot configuration and robot manufacturer.
In manufacturing processes, robots are directed by a list of control instructions to move their respective end effectors through a series of points in the robot workspace. The sequences (or programs) of robot instructions are preferably maintained in a non-volatile storage system (e.g. a computer file on magnetic-disk).
Manufacturing companies, the robot users, through their engineers and technicians, have come to demand two important features from manufacturing control systems. First, robot users seek control systems implemented using commercially available standard computers and operating systems rather than customized proprietary systems. This trend toward the use of standard computer hardware and software has been labeled the “open systems movement.”
Control systems based on standard computers are preferred because they offer robot users simplified access to manufacturing data via standard networks and I/O devices (e.g. standard floppy drives), the ability to run other software, and a competitive marketplace for replacement and expansion parts. Underlying the open systems movement is the goal of reducing robot users' long-term reliance on machine tool and robot manufacturers for system changes and maintenance.
A second feature sought by robot users is a common operator and programmer interface for all robots, facility (if not company) wide. A common user interface for all robots reduces the need for specialized operator training on how to use the customized proprietary systems.
With respect to the open-systems feature, efforts at delivering a robot control system based on standard, general purpose computer systems have not been fully successful because of the limitations of general purpose operating systems. Robot safety and accuracy requirements dictate that robot control systems be highly reliable, i.e. crash resistant, and tied to real-time. The multi-feature design objectives for general purpose operating systems such as Microsoft Windows NT® have yielded very complex, somewhat unreliable software platforms. Moreover, such systems cannot guarantee execution of control loops in real-time.
With respect to the common operator interface features, attempts to offer even limited standards to operator interfaces have not extended beyond a specific robot manufacturer. Notwithstanding the difficulty in getting different robot manufacturers to cooperate, the wide variety of electromechanical configurations has heretofore substantially blocked the development of robot control systems with a common operator interface.
Accordingly, it would be desirable to provide an improved robot control system that both employs standard computer systems and accommodates robots of different configurations. Specifically, it would be desirable to provide the advantages of open systems and a common operator interface to robot control.